1. Field of the Invention
The present invention relates to non-volatile memory.
2. Description of the Related Art
Semiconductor memory has become increasingly popular for use in various electronic devices. For example, non-volatile semiconductor memory is used in cellular telephones, digital cameras, personal digital assistants, mobile computing devices, non-mobile computing devices and other devices. Electrically Erasable Programmable Read Only Memory (EEPROM) and flash memory are among the most popular non-volatile semiconductor memories. With flash memory, also a type of EEPROM, the contents of the whole memory array, or of a portion of the memory, can be erased in one step, in contrast to the traditional, full-featured EEPROM.
Both the traditional EEPROM and the flash memory utilize a floating gate that is positioned above and insulated from a channel region in a semiconductor substrate. The floating gate is positioned between the source and drain regions. A control gate is provided over and insulated from the floating gate. The threshold voltage (VTH) of the transistor thus formed is controlled by the amount of charge that is retained on the floating gate. That is, the minimum amount of voltage that must be applied to the control gate before the transistor is turned on to permit conduction between its source and drain is controlled by the level of charge on the floating gate.
Some EEPROM and flash memory devices have a floating gate that is used to store two ranges of charges and, therefore, the memory element can be programmed/erased between two states, e.g., an erased state and a programmed state. Such a flash memory device is sometimes referred to as a binary flash memory device because each memory element can store one bit of data.
A multi-state (also called multi-level) flash memory device is implemented by identifying multiple distinct allowed/valid programmed threshold voltage ranges. Each distinct threshold voltage range corresponds to a predetermined value for the set of data bits encoded in the memory device. For example, each memory element can store two bits of data when the element can be placed in one of four discrete charge bands corresponding to four distinct threshold voltage ranges.
Some flash memory devices operate as both binary and multi-states. For example, some memory cells are used to store one bit of data (“single-level cell or SLC blocks”) and other memory cells are used to store multiple bits per cell (“multi-level cell or MLC blocks”). For some devices, the SLC blocks and MLC blocks are part of the same integrated circuit, and may even be part of the same memory array. The SLC blocks may be used for short term storage of data, whereas the MLC blocks may be used for long term data storage. Thus, the SLC blocks may be programmed/erased many more times over the life of the device than MLC blocks. Therefore, endurance may be a more significant problem for SLC blocks than for MLC blocks.
On the other hand, because the MLC blocks have more states than SLC blocks, the states are packed in more closely, which leads to greater reliability problem with MLC blocks. An example of a reliability problem is program disturb, which may be experienced during programming due to the proximity of the non-volatile storage elements to one another. Program disturb occurs when the threshold voltage of a previously-programmed non-volatile storage element is shifted due to subsequent programming of other non-volatile storage elements. Because MLC blocks have more states and, therefore, have less separation between the threshold voltage of one state and the next, program disturb is a greater problem for MLC blocks then for SLC blocks.
However, it can be difficult to form SLC blocks and MLC blocks that have desired characteristics for each type of block on the same integrated circuit. For example, the process of forming the integrated circuit can be tailored to achieve high reliability for MLC blocks, but this may come at the expense of lower endurance for SLC blocks.